AtariXLBox Atari 800/5200/130/320/XL/XE Emulator v8b01
-----------------------------------------------------------------------

http://xport.xbox-scene.com
goto http://www.emuxtras.net/ for latest cheats, rumbles, synopsis and skin updates.

Check the Latest-AdamX.txt file for the latest update info.  From now on it will have the latest info and this file will contain the changelog/older update information.


-----------------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator v7.8b

First off...

------------------
Special thanks....
------------------

X-port for porting a great collection of emu's over to the xbox, releasing the source code, and answering my stupid questions.

Atariage (Albert in particular) - For providing a place for me to ramble on. For encouragement in general.

Gilou9999 for a new PM3 skin, synopsis, suggestions, etc.

Bigby, Du0ph0ne, TheMaster3, Nytmar3 for some beta testing.

Kr0tki for the NTSC filter and answering my n00b questions.

Atarimac for reverse engineering the VAPI image format.

Cospefogo for the new onscreen keyboard.  Frank Morris for fixing the minor spelling error in the onscreen keyboard.

Stupot for the tons of game previews.

Comments of support from various interested parties.

If I missed anybody shoot me an email and I'll update this file.


******************************
* Changes To Atarixlbox Core *
******************************

For all you palette freaks added the following options.

* User can pick a custom palette to load if they wish.

* User can tweak the palette settings including hue, saturation, contrast, brightness, sharpness, saturation_ramp.

* NTSC filter added!! True artifact mode. Check it out! (AE, Drol, Lode Runner [disk], etc).

* All settings saved with each game of course!

* Added rewind frameskip option since having rewind and the NTSC filter active can slow things down.  Increase this if game has slowdown when rewind is activated.  Defaults to 2.

* Mouse speed in computer options limited to 1-9

* Modified rewind state saving so it is a little more "useable" on non 5200 games. This prevents rewind from working on games that use the RAM under the OS or Basic but I figured it was a small price to pay. Besides most games that do that run in 130XE mode and that is just a killer on rewind functionality! 

* Sound increased thru turning pokey stereo off. But the user can turn it back on for those few titles that make use of stereo.

* VAPI image support. Super special thanks to Atarimac (author of Atari800MacX) for reverse engineering this puppy! So it turns out there is a use for the Mac!!. ;)  :P  Be sure to set "Patch SIO routine in OS" to "No" when using VAPI images. Oh and fast forward is your friend. 

--------------------------------------------
Following VAPI images are known not to work.
--------------------------------------------

Spy vs Spy - stops at orange screen

Alternate Reality: The City <- You get poisoned at the beginning if the copycheck fails.

Attack at EP CYG 4 - Ship doesn't seem to fire

Jenny of the prairie - stops at title screen

Promoteur - Error 144 at line 250

Ankh

Ballblazer -> Activision (UK)

Mercenary - Escape from Targ -> Novagen Software

Mr. Do!

Music Studio (The)

Rescue on Fractalus! -> Activision (UK)

Targets - A Number Game 


************************
* To do for Atarixlbox *
************************

* Create configuration data for new "auto configuration" system.

* Create an option to let user create a "tape position list" for tape images with multiple games.

* Possibly implement new SDL pokey engine?  (Not sure if it is worth it).

* Auto turn off "SIO patch" when an ".atx" image is selected?

* Unfortunately, some games don't use the full paddle range (e.g. optimal range for "Arkanoid" game is 0-88). The AWinplus allows setting the min-max paddle range.

* Add a startup sound to be played when emu starts up?


***************
* Know Issues *
***************

* Save state restores from samba/relax games where multiple disks are involved will not work automatically.

* H: device issues.  Atari dos 2.5 cannot delete files on the H: drive.  Not much I can do about this one.

* 5200 analog calibration seems to get out of wack when using fast forward.  Only happens during the in game calibration (usually at start of game, or after dying) so just try not to fast forward at that point.

* Disabling attract mode in games can cause weird problems (see Miner 2049'er) so use it only demo's.  K??

* Super Breakout (8-bit version) does not have any sound.

* Leftover Record/playback time is incorrect when recording/playing paddle games.  (I'll fix it l8r)


*****************************
* Interface Related Changes *
*****************************

* New dual-preview skin to support Xtra's.  Say thank you to Gilou9999 for the skin.

* Fixed a couple goofs that prevented loading ROMS over a samba share.

* "Move Selected to the Garbage Folder?" now has a new option.. "Never Move".  So "Yes" will ask before moving the selected file to the Garbage folder.  "No" will just move the file and "Never Move" won't move the file at all.

* New feature "Seconds before playing movie" determines how long the emu will wait before playing a movie.  The default is half a second.  This will help speed up rom browsing.  Especially useful for people streaming stuff (like movies) across the network.

* Pick -1 on "Seconds before playing movie" to set to 0 seconds.  0 will equal half a second..  1 one second, and so on.

* If streaming movies from across the network and the user press on the dpad or a, b, x or y the emulator will abort the transfer.  This should help speed up rom browsing and allow the user an "out" especially for the larger movies.

* User can now select which "cheat code database" they want to load since it seemed silly to mix the many AR and GG codes into one file for Snes9xbox.  Filename must end with the characters "codelist.inf".  e.g. AR_codelist.inf, GG_codelist.inf.

* Select file function now has an option to not display directories.  First menu to use this is the cheat code database select screen.

* Pressing the back key while viewing a games synopsis will toggle between a fixed font and the skins proportional font.

* Fixed long standing bug of YesNo Menu pop-up graphic not centering properly.

* Fixed an issue with the software filters displaying garbage.

* Activated the "Keep user Within ROM Directory Tree?" which I somehow missed.

* Fixed up the box/cart art position on a few skins.

* Fixed a problem where setting the box/cart orientation was screwed up.

* Fixed the bug that screwed up Gilou's skin to begin with (too weird to explain).  :P

* Fixed a long standing bug in the favorites system.  This one goes waaaaay back.  (Thanks to Hyper_Eye for reporting it)

* Emulator should now work with 1.6 Xbox's super big thanks to FreakDave.  1.6 users let me know how this works for you.

* Fixed a problem where the media directory selected by the user replaced the wrong media directory.  Again.  Double Doi on me!  :P

* Fixed the problem where the wrong synopsis description was showing when selecting a game in the favorites menu.

* Fixed odd bug where the opening movie and movies played full screen in the media browser would not display properly at 1080i

--------------
New SAMBA code
--------------

* Old SAMBA library replaced.  You should now have more luck connecting to your SAMBA shares (including a NAS).  Especially shares with passwords which NEVER worked under the old code.

* Renamed "Enter Samba Share Name" to "Enter Root Samba Share Name" since it acts more as a shortcut now that you can "Browse" SMB shares.

* "Samba Server Name" doesn't really serve any purpose at the moment but I left it in there just in case.

* SMB shares can now be browsed.  As a result how you use Samba shares has changed slightly...  Try these steps..

1) Clear out your "Samba Share Name"

2) Use either the ROM browser or the "Change default directories" to browse to your share (Press "Y" until you see the drive list and select "SMB:\\").

3) If it doesn't work, try it again a couple times.  For some silly reason sometimes it times out.

4) If the emu thinks your share needs a password a window will pop-up asking you if you want to enter in a username and password.  Enter it as "username:password".

5) As a result of this change you can set all your definable directories to any share with any password.

6) If for some reason browsing doesn't work try entering your Samba server name in the "Enter Root Samba Share Name" under "Network/Netplay Options" format is "smb://servername_or_ip/sharename" or "smb://username:password@servername_or_ip/sharename" if the share is password protected.  Browsing once within a share is much more reliable.

7) If you enter anything into the "Root Samba Share Name" then you are stuck with that and cant use other servers unless they are on Relax.

8) If steps 1-5 don't work for you but step 6 works you might wanna consider deleting your emu_name.ini file in the SAVES directory.  I was told by one user that this cleared up his problem.

* Some suggestions if you decide to "stream" stuff over the network.

1) Try splitting the workload.  Setup a Relax and Samba share (or even seperate servers) and divy up the workload.  They both have seperate cache's so it's more efficient.

2) Roms, Screenshots, Box/Cart art, Manuals, Commercials, and the like are great candidates for streaming.

3) If you do stream Screenshots and Box/Cart art set the timers a little higher and not the same.  For example 5 seconds on screenshots, 10 on Box/Cart art.  Or just set them to 0 (manual advance).

4) Streaming movies really depends on how good of a network you have  For example streaming movies over a wireless network aint gonna be so hot.  To me relax seems faster but that may have changed with the new SMB code.  You might also wanna consider bumping up the movie delay a couple seconds.

An example of how I have mine set up.  Screenshots and Box/Cart art on the xbox 5/10 sec delay respectivaly (or 0).  GameFaqs, VGMaps, etc on xbox.  
Movies on Relax share to computer connected to my Xbox (1-2 sec delay).  ROMs on a Samba share to my NAS, as well as all of the commercials and manuals.

The possibilities are endless.  Experimentation is worthwhile.  Or you could just slap a super big hard drive in your Xbox and forget all this silliness.  :P

4) Streaming movies really depends on how good of a network you have  For example streaming movies over a wireless network aint gonna be so hot.  To me relax seems faster but that may have changed with the new SMB code.  You might also wanna consider bumping up the movie delay a couple seconds. (only applies if "Movie Streaming Style" is set to "Copy Then Play (slower?)".  Pseudo streaming does not have this limitation.

An example of how I have mine set up.  Screenshots and Box/Cart art on the xbox 5/10 sec delay respectivaly (or 0).  ROMS, GameFaqs, VGMaps, etc on a Samba share to my NAS, as well as all of the commercials and manuals.  Movies on NAS using samba and pseudo streaming.  

The possibilities are endless.  Experimentation is worthwhile.  Or you could just slap a super big hard drive in your Xbox and forget all this silliness.  :P

------------------
End New SAMBA Code
------------------

* Accurate Screen Pixel Ratio option added (see "http://fancyxbox.info/?doc=1&secao=screen" for more into) per gilou9999's suggestion.  Some numbers are still a WIP.  Go into Game/Text Screen Size Position" and select "Set Game Screen to Accurate Screen Pixel Ratio".  The emu will ask you if you wish to turn off software/hardware filters and flicker filter.  This is recommended for the most accurate screen.  You'll still have to manually adjust the image on the Y axis.  We can't do everything for you, ya lazy bum!

* Added an option to display a "Static" video if no movie found.  Can be set to yes or no.  Static file must be named "Tv Static.xmv" and placed in the emu's "backgrounds" directory.

******************
* Rewind changes *
******************

* Rewind is a bit of a memory hog.  On some emu's at 720p it is barely useful.  Some emu's can't even handle it.  Here is what I did.

* Tweaked around with the rewind system fixed a couple potential xbox lockers.

* Modified the rewind system so if memory runs low it clears half the buffer, if that doesn't work it clears the entire buffer.  What this means is that on memory intensive emu's you'll have a rewind system that mostly works.  It's pretty much a "better than nothing" set-up.

**********************
* End Rewind Changes *
**********************

* Pressing Back while in the the controller settings menu will set the value to "None".

* Hopefully addressed weird issues with "Force Reload D:\\*.ini Settings".

* New option to "Keep user Within ROM Directory Tree".  You can find it in "General Settings, Page Two".  Useful for keeping n00bs from getting lost while selecting games.

* Hopefully cleaned up all instances where the current "game select" directory would get trashed.

* Transparency control for keypad and keyboard should now function properly.

* Tightened up the Synopsis parsing code (sorry RessX :( )

* Fixed issue where cycling thru screenshots when non-available would create an infinite loop.

* Fixed two bugs that would cause the game select screen to slow down massively.  One related to having Box/Cart art timer set to 0.  The other related to the rather large size of the Xtra's.  You dirty pirate you!  :P


Fixes to the keyboard/keypad including. These affect emu's that use a keyboard/keypad (Winuaex, AdamX, Atarixlbox)

- Keyboard/keypad no longer corrupts portions of the screen when being moved.

- Keyboard/keypad can be moved diagonally in ALL directions now

- Keyboard/keypad transparency now works properly when "Pause game while using Keyboard/Pad" is set to ON.

- Fixed issue with screen blurring when Keyboard/keypad is activated.  I'm surprised I did not notice this earlier. 


* Created a new overlay system. The file "overlay.ini" contains configuration information for each overlay, including the color of the transparent button.

* Fixed issue with the "Music Control Menu" where the "Go to next/previous song" options were not working.

* Fixed issue where "View playlist" did not show the first two songs.

* Fixed issue where "pause" would still display even after changing songs while viewing the playlist in "clear screen" mode.

* Add song to playlist now functions correctly.

* Added a seperate "Volume Control Menu". It can be accessed by pressing "Y" in the "In Game Options" menu, or from the "Game Configuration" menu. It lets the user set the volume for in game sound, mp3_cdda, cdda, movie and mp3 music player from 0-100.

* Fixed issue where games that had more than 48 CRCs in the cheat code database would cause a crash when game is selected while searching for cheat codes.

* Rumble codes and cheat codes are now stored in seperate files. ( "rumblelist.inf" and "codelist.inf" respectively).  To make it easier to search for "rumble codes" only.  Note to cheat code makers: be sure to make your cheat codes and rumble codes seperately now.  For those importing rumbles, the rumble does not have to be "activated" in order to work, it just works.  Remove it from the list if you no longer wish to use it, or set it to "Rumble Enabled On - Nothing".

* Cheat code menus moved around.  In-Game menu option "Cheat Codes" was moved into "Game Utilities" and replaced with "Cheat Code Database" to make it easier for the gamer to use codes in the database.  Cheat code creators just need to go into "Game Utilities" to get to their stuff.

* Skin can now have a "Startup Movie" on loading menu. Please use with discretion (no long movies).  User can press B to skip the movie.

* "Startup Movie" can be displayed full screen or in a window. If fullscreen is used the loading menu will not be displayed.

* Transparency for "Startup Movie" can be set as well.

* Moved the network initialization code to run before the loading menu. This moves the delay caused by network init to before the display of the loading menu, not after.

* Files when selecting within a zip are sorted.

* Added a seperate timer for alternating Box/Cart art.

* LThumb-Down - Go to next Box/Cart.  LThumb-Up - Go to previous Box/Cart.

* Ability to view synopsis from within game. (press right analog stick down).


* Movies! The ability to display movie previews!

- You can set the movie/previews directory in the "Change Default Directories" section.

- The movie name has to be exactly the same as the ROM name. Only one movie per game. 

- Movies display over screenshots so if you want you can see screenshots when no movie exists.

- Can now stream videos and screenshots from Samba or Relax.

- Display order can be set to. None, Screenshots Only, Movies Only, Screenshots 1st- Then Movies, Movies 1st- Then Screenshots.

- Sound for movies can be turned on/off

- Box/Cart art can be displayed in seperate window.

- Transparencies for Box/Cart art (and screenshots) is now supported  Check out some of the 3d Box/Cart art floating around!

- Skin author can now designate two locations where Boxart or Cartart will display based on width vs height.

- Old Screenshots are now sorted and displayed in proper order.

- Old Screenshots can be named anything (as long as it has .png extension)

- In Game Options Screen can be sized and positioned now.


* New option to "Force Game Screen Size/Position". There are two configurable screensizes. (To deal with multi-core systems like MekaX and XboyAdvance). This will be useful when switching from HDTV to SDTV or vice versa. It will save the user the trouble of resizing the screens for something that is likely temporary.

* Numerous changes to menu system see above (current menu configuration layout)

* Skin Sprites can now be named for easier manipulation. Directory names must be of the format "0_spritename", "1_spritename", etc. Do not use underscores for the spritename. It is a delimiter.

* Added "Select Skin Configuration Used" and "Save Skin Configuration as" to the "Configure SKin" menu in place of the above moved options. This allows multiple skin configurations in one skin allowing the user more "pre-defined" options on how a skin looks. For example the placement of the games list and the preview screens. Gilou's Dynamic skins really take advantage of this, check 'em out!

* Sprites now display when sizing the preview screens.

* Changed "Seconds before auto-advancing Screenshot" to "Seconds Before Auto-Advancing Artwork".

* Changed "offset X" and "offset Y" to "Offset X (left/right)" and "Offset Y (up/down)" in the Sprite Settings menu.

* New Option to pause or not pause emulation when keyboard or keypad is up.

----------------------------
Finished the "Media browser"
----------------------------

* Be sure to use the RessurectionXtras or Xtras for maximum enjoyment!  "http://www.emuxtras.net"

* Ability to display documentation (text or graphic) and commercials.

* Assigned buttons (white/black) to go to next/previous files when viewing documentation. See below graphic/text file viewer controls.

* Once the user opens a document - the emulator remember this document as long as the game session is running.

* View settings for each document viewed are now stored in a "bookmark" file so next time you view a file your settings are restored.  Press Back to "reset" as if reading document for first time.

* "View Text File" changed to "Browse Manuals/Videos"

* Support added for different kinds of documentation in the media browser.  Including "Manuals", "Game FAQs", "Game Maps", "Commercials", and "Other".  The user can also specify where these directories are located.  Defaults are "Manuals", "GameFAQs", "VGMAPS", "Commercials", and "Other".  "Other" is in the media root directory (typically "x:\media\Other") for non emu specific stuff.

* User can specify whether manual is displayed "Full Size" or be "Sized to fit screen" when loaded.  Keep in mind any saved bookmarks override this.  Press Back to toggle between "Full Size" and "Size to fit screen".

* Commercials can be displayed either full screen, at the size of the video with black background, or same size of the video with synopsis background.

* NOTE: Some emulators are tight on memory (eg: NeoGenesis) and not all the Xtra's will load.  If you have trouble with an image loading you might have to resize it.

* In screenshot viewer. If the image is smaller than your text file screensize settings it will work as follows. 

a) If the image is taller than it is wide it will continue expanding the image ( based on aspect ratio) until the width fits within the width of your text file screensize width. (Most normal manuals)

b) If the image is wider than it is tall it will continue expanding the image ( based on aspect ratio) until the height fits within the height of your text file screensize height. (For example NES manuals).

This seems to effectively stretch the image in the best manner possible for scanned manual reading.

* Browsing manuals/videos should auto select any file matching your ROM name exactly.  Select "View Media Directory" for manual browsing.

* Unmapped controls that allow you to move the screen around since word wrap should work correctly now.

* Change Fixed Width font controls are mapped to the right analog stick (left/right) like the help screen says it should be. :lol:

* Set font size keeps seperate settings for Fixed Width fonts and proportional fonts since they produce different results.

* Graphic documentation can now be stored in a ZIP file and still work with the media browser functions (next/previous and bookmarks).

* Music no longer starts playing after viewing text file in game.

* Number of lines displayed in the text file viewer now properly match user set text screen size.

* Number of lines displayed updates properly if user modifies text screen size within text file viewer

* Text file viewer functions turn off FixedWidth before displaying any menu.

* Added a fixed width font for the text file viewer. If you wanna use it you have to make sure that a file named (included in zip) "FixedFont.ttf" is located in the emulator directory. Press "Y" in the text file viewer to switch to the fixed font.

------------------------------------
Controls for text browser

A -> Start Search
B -> Exit
X -> Continue Last Search
Y -> Simulate width font

White -> Previous file
Black -> Next file

Start -> Help screen
Back -> Reset view as if document was loaded for first time.

Dpad -> Up/down, Left-> Up Page, Right-> Down Page
Left Analog button -> Set font size
Left Analog Up -> Top of file
Left Analog Down -> End of file
Right Analog button -> Set text screen size
Right Analog left/right -> decrease/increase fixed-width font size

Left/Right triggers - Move up/down text file.

----------------------------------------------
Controls for screenshot browser

A -> Lock/Unlock Aspect Ratio
B -> Exit
Y -> Delete file (Utilities-> browse screenshots only)

White -> Previous file
Black -> Next file

Start -> Help screen
Back -> Toggle between "Full Size" and "Size to fit screen".

Dpad -> Up/Down/Left/Right -> Move image 1/4th the total size of the image.
Left Analog button -> Music Control Menu
Left Analog up/down -> Move screen up/down.
Right Analog left/right -> decrease/increase screen size.  Size changes proportional to distance the stick is pressed.

------------------------------------------

*********************
* End Media Browser *
*********************

* Ability to pick a file from within a zip file.

* Fixed a few interface "quirks" regarding playing game sounds while emu is paused.

* select save state screen tells you whether your "loading" or "saving", it also now displays whether a save file has a record session ( R ) associated with it.

* When a new save state is created it deletes any recordings. If you press the "back" button while in the save state select screen it will allow you to delete that save state (as well as it's recording).

* Utilities menu display modifed to state "stop or start recording/playback" depending on whether they are turned on or off. It also displays total minutes remaining or played so far.

* Record/Playback turn off when exiting a game. Boy that sure caused some confusion. 

* Switched positioning control of sprites in the skin menu to the left analog stick, that way you don't have to worry about unintentionally lowering the volume.

* Savestate load screen is a little more informational when sent to it from the save/record option. 

* When you save a picture it removes the screenshot save path making it easier to see long names.

* Changed order of some of the entries in the "Music Control Menu". 

* Playlist repeat mode, and View Name setting is saved in INI file. Although song name only shows in the music control menu.

* (cheat codes)When "adding a code" from the "edit code" screen the current code is copied as a template.

* You can activate/deactivate a code from the "cheat code list" menu by pressing start.

* Deleting a cheat code now asks you if you are sure (I got tired of accidently deleting my codes ).

* Fixed up the problem created from using multiple files in a Zip file.

* Fixed problem when a filename inside a zip contains too many characters. While I was at it I fixed the space as the last character when trimming to 42 characters behavior. Zip files where the path was saved now unzip correctly.

* Rewind and Fastforward are de-activated during record/playback and netplay mode. It even tells you so when you try!!

* (internal) Modified YesNoMenu so it doesn't clear m_menuText.

* Added ability to add in cheat codes from a Gameshark compatible database (see description below). This includes the ability to export the cheat codes in a game to "share" with your friends. Cheat/rumble codes are included for most games. When "adding" codes from the gameshark DB it will move you to the entries with a matching CRC. If not you'll have to manually find the game.

*******************************************************************************
* "Auto Game Configurations (aka Configuration defaults) for select emulators *
*******************************************************************************

In the "General settings" menu there will be a new option.

"Automatically Use Default Game Configuration - Yes/No"

If the user sets it to "Yes" it will bring up the game configuration screen and let the user define the default (if no default.stg and default.key file exists).

In the "Configuration" menu there will be a new option... "Set default game configuration"

The user can go in anytime thru the "Configuration" menu to change these "defaults" to something else if they wish.

Once set to "Automatically use Default Game Configuration" the user will not see the game configuration screen again unless they... a) press X when selecting a game. Change "Use Default Game Configuration" back to "No".

Keep in mind when it is set to "Yes" the game will use your "Default game settings" and not the normal x-port behavior. If set to "No" the emulator will behave like it usually does. Each emu is typically different. But all, at the very least carry the controller settings over.

This feature will only be added to emulators in which it is feasible to use.


-----------------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator v7

http://xport.xbox-scene.com

First off...

------------------
Special thanks....
------------------

X-port for porting a great collection of emu's over to the xbox, releasing the source code, and answering my stupid questions.

The beta testers - NE146,  Jibbajaba, mimo, panamajoe, Pyjamarama, remowilliams, Stephen, telengard, paranoid.  I know you all are busy but thanks for the support and input.

Atariage (Albert in particular) - For providing a place for my beta testing thread.  For the 5200 overlays that I used as a template.  For encouragement in general.

Kr0tki for the alternate NTSC palette and info to make Bounty Bob playable.

Foft for the pokey sound engine from the GP2x port of A800.

HiassofT for letting me use Picodos as a built in disk menu.

Piotr Fusik for his ASAP code.

Awinplus team for some borrowed ideas.

Brian Berlin (aka eegt97) for info regarding getting some 5200 games to work.  Brian did the pc 5200 emu kat5200.  Be sure to check it out!

Various people on the Atariage forums for providing information I needed (for example info regarding Trackball mode).

Comments of support from various interested parties.

If I missed anybody shoot me an email and I'll update this file.

-----------
what's new:
-----------

******************************
* Changes To Atarixlbox Core *
******************************

* Fixed new pokey sound issues.  Using a modified new_pokey engine by foft, author of the GP2x port of atari800.

* Core updated to ver 2.03 with the exception of the pokey engine.

* New NTSC palette code using some routines created by Kr0tki.

* Autoconfiguration for select games.  If you do not have a game configured and the emu finds a matching crc in the configs\game directory it will ask you if you wanna use it.

* 5200 Overlay support!! Now you can bring up the corresponding overlay for whatever 5200 title you are playing. Just use the same button used to bring up the onscreen keyboard (currently left analog button for 5200). Use left analog or digital pad to select a keypad button. Right analog moves the overlay around. Black makes more transparent, white less transparent. The overlay location is saved for each title.

* Support for the 5200 analog stick.  It is only read when in 5200 mode.  

* Dual Analog support!  Yeah Dual Robotron and Space Dungeon baby!! Just check out the configuration screen and enable dual analog.

* Trackball support! Use for games like Missile Command and Centipede. Plus a trackball/analog stick sensitivity mode to make certain games more playable. 100 is the default. 70-80 is a decent setting for titles like Missle Command and Super Breakout.

* Replaced generic keyboard with 130xe look alike (only used within game).  Keyboard can be moved with right analog stick. Keyboards location and transparency are saved in each games configuration.

* Extra functionality for the virtual keyboard. Cursor can be moved with the analog stick.  X button toggles shift key. Y toggles ctrl key. Start presses enter and back backspaces. White/Black change the keyboard transparency.

* Lightgun support.  Barnyard Blaster, Bug Hunt, Crossbow, and Special Forces play pretty well.

* New default "Miner 2049'er skin" you can change it to the "old_atarixlbox" if it rakes on your nerves.

* Ability to pick a file from within a zip file. That way multi-disk games can be zipped now. Code stolen from the ViceX emulator.  Keep in mind that if you play any game that "saves" to a floppy, that disk has to be a seperate UNZIPPED file.

* New option in the "Game Options" menu to display what files are "loaded" in drives 1 thru 4.  Plus I added a rotate disks option. Press the A button when viewing the loaded disks.

* Added rotate_disks option to the controller setup.

* Option in configuration menu to allow swapping of joystick in port 1 and 2.  I think like a total of two 8-bit and one 5200 game use this.

* Rewind and slow down functionality.  This was already in the last release by x-port but I just wanted to re-iterate.  :P  

* Ability to turn on/off player/missile/playfield collisions (for cheating).  Try it on games like Pacman or Jumpman.  The collision setting is not saved, but the sprite collision detection settings are saved on exit.  So all it takes is a simple hop into the options menu to re-activate it.

* New option in configuration menu "do not allow activating attract mode". Really only useful in demo's.  This and above idea borrowed from AwinPlus.

* Paddles 0 & 1 are now mapped to sticks 1&2, or 3&4 depending on what port you have the mouse set too.

* Added built in disk menu for using with megaimages. When you turn this option on the emulator will read the disk and display all games on it for your selection. It's under the "computer specific options" and it's called "Use built in disk menu". Thanks to HiassofT for letting me use Picodos as the built in disk menu.

* Add in the ability to play SAP music. I used the ASAP code made by Piotr Fusik. Playback speed (for SAP files) can be set to either NTSC or PAL. For those not in the know SAP is like the Atari equivalent of the SID collection for the C64. Check it out at "http://asma.atari.org". The player can also play the following formats, CMC (Chaos Music Composer), CMR (CMC Rzog), DMC (DoublePlay CMC), MPT (Music ProTracker), MPD (MPT DoublePlay), RMT (Raster Music Tracker), TMC, TM8 (Theta Music Composer 1.x), TM2 (Theta Music Composer 2.x).

* modified the cheat code system to read/write values the way an Atari would. That way you can check, for example, the player/missile collision registers to see if a collision happened. Or you could (in theory) disable certain sound channels, etc.

* Added ability to add in cheat codes from a Gameshark compatible database (see description below). This includes the ability to export the cheat codes in a game to "share" with your friends. Cheat/rumble codes are included for most 5200 games. When "adding" codes from the gameshark DB it will move you to the entries with a matching CRC. If not you'll have to manually find the game (sorry, only one CRC per game).

* Fixed artifact mode selection option, it can now be used for games like (Drol, Lode Runner, etc).

* Fixed screenshot saves.  The colors are now correct.

* Correct screen not displaying properly when no filter is selected.  (look at the ladders in games like donkey kong and jumpman).  Filters still place garbage on the right and bottom of the screen though.  Thanks to x-port for advice.

* Record/playback now work correctly.   Thanks to x-port for advice.  It now also records all keyboard presses and 5200 analog movement as well as Paddles 0 & 1.

* Added a record analog (yes/no) option so you can double the record time for those 5200 games that do not really need the analog stick (Galaxian, Pitfall, etc).  Analog stick will be disabled.

* Changed so player/missile detection still occurs when fast forwarding.

* "autodetect" for media type. In most cases you can exit the options screen and be good to go (see tips on getting a game to run).  Unfortunately cart types have to be selected, but I did make it easier (see "oddball cart types" below).

* Turned on code for upload/downloading configurations to website. 

* Thanks to Brian Berlin (aka eegt97) 5200 Star Trek and Pitfall can be started now. Brian did the pc 5200 emu kat5200.  Be sure to check it out!

* 5200 games like Missile Command, Centipede, Pole Position, Pengo, and Xari Arena are playable. Super Breakout is a little more playable. 

* Thanks to Kr0tki Bounty Bob is now playable.  There are only two working versions of Bounty Bob that I know of.  The correct 5200 dump and the cassette version released in the UK.  I highly suggest the 5200 version, UK version is a little slower.  Set the emulated Atari to PAL for the UK version to work properly.

* Netplay should now work properly and it passes keypresses as well.  No analog yet though.


***************************************
* Internal changes (the boring stuff) *
***************************************

* Disk mounts from savestates are now automated. The only exception is Samba/Relax drives. I have not decided (if even possible) what to do about them. Old savestates, most likely, are incompatible. Although it is smart enough to ask you where the disks are if it can't find 'em.

* If you set the mouse type to anything other than "none", load a game, and then load a game where the mouse type is "none" it doesn't reset. So for example 5200 games will lose their analog control. Fixed.. 

* Fixed up the problem created from using multiple files in a .zip archive.  This error also occured when "changing disks".  Removed all the configure game code that does not need to execute when changing disks and changed it so the emulator keeps all of the save/config/key stuff underneath the originating (read boot) disks name. Keep in mind that if you play any game that "saves" to a floppy, that disk has to be a seperate UNZIPPED file.

* Seems the capslock key was not mapped properly.  Fixed it, now we can type in lower case!  Keep in mind on the Atari caps works in reverse.  Pressing capslock will put you in lower case, unlocking capslock puts you back in upper case.  8:

* Apparently the emu did not "unload" a cartridge, disks, executable, or cassette when switching games thus creating weird behavior. (like atari basic being unusable).  Fixed that.

* Artifact mode didn't turn off when using it and switching games.. fixed

* Rewind is deactivated when in 130Xe or higher mode (crashes).

* Put in some code that hopefully will prevent any conflicts when cold_restart is mapped to a combo where one of the buttons is mapped to something else (like START for example).

* Upload configuration has been removed from the configuration screen and moved to the options screen where it makes more sense to use it.
Upload configuration adds file CRC and media type to the name.  Download configuration displays current file CRC for user comparison.

* Modified the button definitions to include "5200 specific" options (no more crazy mapping!), as well as removing unneeded stuff like "F1-F10".  Things less likely to be used (like mouse buttons) I pushed towards the end of the list.

* Changed the "Game Configuration" menu so it only displays options specific to the machine type selected.  This includes the Video type "NTSC/PAL" option since there is no such thing as a PAL 5200.

* Autoselect media automatically brings up the cartridge select screen if the media type is a cartridge.

* The cart select screen now only displays applicable cart entries. Those that are the same size as the file in question as well as filtering out computer/5200 depending on what system is currently selected.  Unusual cart types are not displayed by default (see "oddball cart types" below).

* Some menu changes.  Specifically..

-  Split the computer specific options to a second screen.  If you set the computer type to something other than Atari 5200 a menu option will appear allowing you to set them.  All shared options are left on the main config screen.

-  If the computer type is set to Atari 5200 it will automatically (on exit) set the media type to cartridge and if the cart type is not 5200 specific it will bring up the cart select screen.

* Removed atari_ostype.  If anyone can think of a reason to keep it, let me know.

* Removed pokey_type.  We default to pokey_new.  Is there any reason not to?

* Removed "Enable 0xC000 RAM in Atari 800."

* Removed "RTime Emulation" the emulator by default gets the current date/time anyways.

* Basic Cartridge is set to on when autodetect detects a basic program.

* Menu option in "computer configuration" called "Lock in Autoselect Media Type".  The "lock in" feature is there to allow the user to change the media type if for some odd reason they want to, but prevent it from being changed accidently.  Autoselect should get it right 99% of the time, but JIC.

* Changed the default cntrlr preset to "Atari Joystick". It auto changes to this when the user changes the machine type.


* Added custom presets for the controllers.  These are in the "Game Configuration" and "Game Options" menu. Controller settings can be saved under these defaults if you do not like the way I set them.  ;)   Only Emulator Definitions and Joypad Mappings are saved.  There are three kinds.

- Atari 5200 for 5200 games.

- Atari Joystick for most stick based games.  Common keys like space, enter, and esc are mapped to buttons.

- Atari Keyboard for games like Ultima IV.  Same as Joystick except the keypad is mapped to the arrow keys.

- Controller preset filenames are "Atari 5200 Stick.ini", "Atari Joystick.ini", and "Atari Keyboard.ini" and are stored in the default saves directory.  The emu copies these from your emu directory into the default saves directory so make sure they are in there.  If not you can manually copy them over or just define them yourself!!  

- For Atari Joystick.  Xbox d-pad is mapped to the joystick. A = "button 1". B = "stick up" (for games that require pressing up to jump). Start= "Start". Back = "Select". Black = "Option". White = "Esc". X = "space". Y = "enter". Right stick up=1, left=2, right=3, and down=4.  Left trig+Right stick up=5, left=6, right=7, down=8.  Left trigger+X=0 and Left trigger+Y=9.  Start+Back=Cold_Start(reboot).

- Atari Keyboard is the same as Atari Joystick except the stick is mapped to the keyboard arrow keys.  (For you Ultima fans).

- Atari 5200 Stick.  Use the left analog stick or the Xbox d-pad for the joystick. A= " button 1". B= "button 2". Start= "Start". Back= "*". Black=  "#".  White= "Pause". Numpad is assigned the same as Atari Joystick except 0 is assigned to X and 9 is assigned to Y (no left trigger).  Start+Back=Cold_Start(reboot).  White+Black=Reset button.


* Changed cartridge descriptions so the proper choice is a little more obvious.

* Changed the cart select screen so it does not show the "oddball" cartridge configurations. This can be toggled by selecting the "Show Odd Cart Types" line. This is my solution to the one thing that bothered me about automediadetect, and that is the rather large cartridge type list with mostly useless entries.


------------------
Configuration tips
------------------

Well I never was 100% happy with the config screen but I never got a whole lot of input regarding it.  So here are a few hints on getting games going...

If the emu finds a config file, use it.  I have pretty much every 5200 game covered and several A800 games from Atarimania and Fandal's site.

Most everything else you can just hit the B key to exit the config screen and you will be set.  Thanks to the autodetect and auto config search feature for the most part 90% plus of the games will be playable off the bat.

Any A800 game not from the US is a PAL game.  Don't worry about Japan the a800 didn't exactly go big over there.  ;)

If the game is a disk and it stops on the DOS menu with the message "please type 1 letter" that means it is a basic program.  Go back into config and turn Basic "On".

If the game fails to load, for whatever reason.  Try switching machine type to "Atari 800".

If that doesn't work set machine type back to "Atari 800xl" and set "Patch SIO Routine in OS" to "No".

If that doesn't work, I don't know what to say.  :P  Actually there is the odd game that requires Basic to be enabled or it will kick you back to the game select menu "immediately".


***************
* Know Issues *
***************

* Save state restores from samba/relax games where multiple disks are involved wont work automatically.

* H: device issues.  Atari dos 2.5 cannot delete files on the H: drive.  Not much I can do about this one.

* 5200 analog calibration seems to get out of wack when using fast forward.  Only happens during the in game calibration (usually at start of game, or after dying) so just try not to fast forward at that point.

* Disabling attract mode in games can cause weird problems (see Miner 2049'er) so use it only demo's.  K??

* Super Breakout (8-bit version) does not have any sound.

* Leftover Record/playback time is incorrect when recording/playing paddle games.  (I'll fix it l8r)


**********************************
* To do (the feature creep list) *
**********************************

* Unfortunately, some games don't use the full paddle range (e.g. optimal range for "Arkanoid" game is 0-88). The AWinplus allows setting the min-max paddle range.

* Add a startup sound to be played when emu starts up?


*****************************
* Interface Related Changes *
*****************************

* Fixed a few interface "quirks" regarding playing game sounds while emu is paused.

* select save state screen tells you whether your "loading" or "saving", it also now displays whether a save file has a record session ( R ) associated with it.

* When a new save state is created it deletes any recordings and if you press the "back" button while in the save state select screen it will allow you to delete that save state (as well as it's recording).

* Utilities menu display modifed to state "stop or start recording/playback" depending on whether they are turned on or off.  It also displays total minutes remaining or played so far.

* Record/Playback turn off when exiting a game.  Boy that sure caused some confusion.  :lol:

* Switched positioning control of sprites in the skin menu to the left analog stick, that way you don't have to worry about unintentionally lowering the volume.

* Savestate load screen is a little more informational when sent to it from the save/record option. 

* When you save a picture it removes the screenshot save path making it easier to see long names.

* Changed order of some of the entries in the "Music Control Menu". Added options to skip to next/prev song within a SAP/tracker file. Pressing "start" while in the game select menu will play any SAP files in the "sap" directory with a matching filename.

* Added an option to show (view) song name when the mp3 player changes songs. It also shows the song number within a SAP file (atarixlbox) for multisong SAP's.

* Playlist repeat mode, and View Name setting is saved in INI file.

* (cheat codes) When "adding a code" from the "edit code" screen the current code is copied as a template. You can activate/deactivate a code from the "cheat code list" menu by pressing start.

* Deleting a cheat code now asks you if you are sure (I got tired of accidently deleting my codes :lol: ).


-----------------------------------------------------------------------


AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v6

http://xport.xbox-scene.com

What's new:

 - Updated UI core to most recent feature-set


-----------------------------------------------------------------------


AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v5

http://xport.xbox-scene.com

what's new:


*****************************
* Interface Related Changes *
*****************************

 - ISO9660 support

 - Simplified menus

 - Help menu

 - New button options from Game Selection menu :
     X     - Configure Game
     BLACK - Delete save files for selected game
     WHITE - Adds/Removes selection as a favorite

 - HQ2X graphics filter

 - Option to startup with background music disabled

 - Option to startup on the favorites game selection screen or the regular game selection screen

 - Option to confirm overwriting save states

- Support for Linux Relax sharing
   At this time, your linux share name must contain the "/" character somewhere
   if you want it to be recognized as a linux share.
   For example :

   rlxshare=/home/player/roms@192.168.1.30:1400

 - Possible Samba fix/improvement : see next item

 - New network configuration parameters : XBox IP, Subnet Mask, Gateway IP.
   Access these through the Configuration -> Network Options menu or change
   them in the INI file :

   [GENERAL]
   LOCAL_IP=192.168.1.30
   SUBNET_MASK=255.255.255.0
   GATEWAY_IP=192.168.1.254
   
   LOCAL_IP is the XBox IP address
   SUBNET_MASK is the subnet mask 
   GATEWAY_IP is your default gateway

   Set these to the same values you use in your XBMP configuration file.
 
   This might help people with Samba issues.

Merry Christmas!


------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v4

http://xport.xbox-scene.com

What's New :


*****************************
* Interface Related Changes *
*****************************

 - Virtual Keyboard - go to Controller Configuration / UI Mappings to select
   the button combo that will bring up the Virtual Keyboard while in-game.

 - Music Control Menu - press LTHUMB anywhere to bring up the music control menu.
   This is also a customizable controller action while in-game.  Configure it
   via the Controller Configuration -> UI Mappings menu.

 - Can now save any string setting (like Samba/Relax share names) and directory
   locations via menus.  To change Samba/relax share names, go to Configuration ->
   Network/Netplay Configuration.  To change the default directories, go to
   Configuration -> Change Default Directories 

 - Can enter descriptions for cheat codes using virtual keyboard or real keyboard.

 - Can now wrap backwards from first screenshot to last screenshot


--------------------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v3

http://xport.xbox-scene.com

What's New :


*****************************
* Interface Related Changes *
*****************************

 - Fixed INI reading bug that was making the emu hang during startup and when changing
   skins for some people

 - Fixed samba/relax shares


--------------------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v2

http://xport.xbox-scene.com

What's New :


****************************
* EMU Core Related Changes *
****************************

 - Fixed PAL timing

 - Fixed bug preventing some executables and carts from not working


*****************************
* Interface Related Changes *
*****************************

 - Background music should no longer be choppy when browsing screenshots or
   during any other disk-activity

 - Changed INI reading routine so that it loads faster

 - Global Controller Configuration option.  When you go to Main Menu -> Configuration ->
   Configure Controllers it will ask you if you want to apply the changes globally.
   If you select "Yes" then all of the stored controllers settings for all of the
   games you have already played will be updated with the new settings.


--------------------------------------------------------------------------

AtariXLBox Atari 800/5200/130/320/XL/XE Emulator port for XBox v1

http://xport.xbox-scene.com

More big thanks to J-RED for the excellent skin!

Features :

 - Emulates Atari 800/5200/130/320/XL/XE 

 - Excellent compatibility - ported from Atari800

 - Loads cartridges, disk images, executables

 - USB Keyboard support 

 - USB Mouse support 


Default ROM dir is D:\ATARIDISKS


====================================
Important Tips on Usage - README!!!!
====================================

There are many different file extensions for 8-bit Atari disk images but ATR and DCM
seem to be among the most common.  These disk images can be zipped or unzipped, but
if they are zipped and the emulator will not be able to write data back to it.

If the file you have selected is a cartridge image (e.g. Atari 5200 cartridge image)
then you need to select the "Cartridge" media type from the configuration menu.
You will also need to select the cartridge type because the emulator cannot autodetect
the correct type.  This is done simply through trial and error.  When you are presented
with the list of cartridge types from which to select, you should notice that some
lines are surrounded by "-> <-" text.  You should try all of those first before trying
any others.

If the file you have selected is an executable (e.g. an EXE, COm, XEX, etc file) then
you need to select the "Executable" media type from the configuration menu.

Some compilation disk images (e.g. Jellystone compilation ATR disks) require a loader.
There is an included disk image ATR file in the D:\ATARIDISKS directory called MENU.ATR.
Load up that file and wait until you are presented with the main menu text.  At that time,
press RTHUMB to bring up the emulator options menu and select "Load New Disk Image Into Drive B"
The disk image must be placed in drive B.  Once you have selected the file, return to the
emulation and the menu program should spring to life and show the contents of the disk.
It's now a simple matter to select the game you wish to play.

You can also use the included DOS_2_0_S.ATR disk image to browse your disks.  Load it up,
then select a new disk image for drive A, then go back to the emulator and press the 
keyboard A key and press enter when it asks you for a file spec.  It should list the
contents of the disk you inserted.  Then you can press L to load one of the binary files
from the directory listing.  It will prompt you for the name.  Enter the whole name
including the period that is missing from the display.  

With the DOS_2_0_S.ATR file still loaded, press A again and when it asks you for 
the specification, enter "H:" (without the double quotes) and press enter.  It should
list the contents of your XBox D:\ATARIHD directory which should contain the 
BANKBANG.XEX file.  Press L and when it asks you to enter the filename, enter
"H:BANKBANG.XEX" (without the double-quotes) and it should load up the game.

There are two different sound modes : old and new pokey.  Some games sound better with 
the new pokey and others requires the old pokey to play correct sound.  A good example
of this is the Ataro 5200 game Berzerk.  You must select old pokey when playing Berzerk
in order to hear the digitized voices.  New pokey generally seems to sound better, however.

If you are playing a game and the controller seems way too sensitive (e.g. Centipede)
then you should try playing it with a mouse mode.  Select "Joystick Using Mouse" as the
mouse type from the configuration menu.  You can now simulate mouse input via a real
USB mouse or via the Left Analog stick on the XBox controller.  You can adjust the 
mouse sensitivity by changing the "Mouse Speed" setting on the configuration menu.

If a game does not load the first time, you need to try it on all the different machine
types and you also need to verify what kind of media you are trying to play.  (Disk,
Cartridge, Executable File, Cassette).  You may also need to adjust some of the other
options on the configuration menu.  

========================
Playing with Disk Images
========================

The ideal way to play disk images is unzipped and on your XBox hard drive.  If you are
playing a disk-based game and it needs to write data back to the disk, then it will
not being able to do so if the disk image is zipped or if the disk image resides on 
non-writable media (e.g. CDRW/DVD-R ).  Furthermore, it also cannot write back to
disk images that are loaded from across a network share.  

============================
Save States With Disk Images
============================

Whenever you save a state, that state can only be re-loaded if the same disk image is
loaded.  For example, let's say you start playing Mindshadow.  First you select Mindshadow
disk #1 from the game-select menu.  After it has loaded, it will tell you to insert disk #2.
After you have done so, you can actually play the game.  At this point, you decide to 
save the state.  The next time you want to play from that save state, you have to
select disk #2 from the game-select menu instead of disk #1 and then load the state.


*****************************
* Interface Related Changes *
*****************************

 - ZIP support

 - Cheat system - Search/Create your own cheat codes (see notes)
 
 - Favorites list

 - Netplay

 - Resizable game screen

 - 480p, 720p, 1080i support

 - Skin-able :
    - Backgrounds
    - Sounds
    - Background Music
    - Sprites
    - Text position (right/left/center, top/bottom/center)
    - Text color, select bar color
    - Font
    - Fading speed
    - Screenshot position
    - Can specify 2 sprites to surround the selected menu option
    - Option to have a transparent select-bar color (from select-color menu)
    - Can flip sprites horizontally/vertically
    - Can set motion_x and motion_y variables for sprites
    - Sprites can loop continuously or just once
    - If you want to change the way something looks in this new UI,
      chances are that you can change it via the Configuration menu.

 - Save Game management - delete save game files

 - Samba/NetBIOS sharing support (read roms from your PC)

 - Relax Network Sharing (read roms from your PC)

 - Play MP3 or M3U playlists in the background
   (Can also read MP3/M3U from across Samba/Relax shares.)

 - User definable save directory.  If you don't like the default of
   E:\SAVES\ATARIXLBOX you can change it via the ATARIXLBOX.INI file

 - Take in-game screenshots and display them on the game selection list

 - New UI feature - auto-screenshot capture mode.  When enabled, the emu
   will start taking screenshots at a user-defined interval.  Useful for
   ripping sprites/animation.

 - Hardware filtering options : Point, Bilinear, Trilinear, Anisotropic 

 - Graphics filters :
     + 2xSai
     + Super 2xSai
     + Eagle
     + Super Eagle
     + SuperScale
     + AdvanceMame 2x
     + Simple 2x
     + 2xSai Scanline
     + Super 2xSai Scanline
     + Eagle Scanline
     + Super Eagle Scanline
     + SuperScale Scanline

 - Record/Playback feature - record your gameplay in the emu and then
   play it back again.  Record up to 10 minutes of gameplay.

 - Every single in-game command is fully customizable on any of the
   four joypad controllers.

 - Map any emulator or UI command to a single button or a combination of
   two buttons.  (e.g. RTrigger+LTrigger = Save State)

 - Autofire capabilities for any emulator button on any controller

 - One-button combos (define a series of emulator commands to be played
   back when you press a user-definable XBox controller combination.)
   (E.g. Press RTrigger+LTrigger to execute the command string
   A,B,A,B,Up,Down,Left,Right)

 - Traverse any directory on any drive ( Continue selecting the parent
   directory entry on the file selection list to get the drive selection
   list.  Selectable drives are C, D, E, F, R, X, Y, Z, and SMB. 
   R is the CDROM drive.  SMB is the samba share you have defined in your
   ATARIXLBOX.ini file.)  Press Y from any file-listing screen to go up one
   directory level.

 - All UI commands (save state, load state, screenshot, etc) can be
   invoked from the Options/Pause menu as well as in-game via your
   customized joypad mappings.

 - Can be invoked from a command-line to directly run a game from a front-end
   or dashboard and bypass the user-selection screens. (Only if the frontend
   or dashboard supports this feature.)

 - Can return to the launching program *if* the launching program supports this
   feature.  For example, if the custom-launch routines are incorporated into 
   a new frontend, that frontend could launch ATARIXLBOX and when you exit 
   ATARIXLBOX, that frontend can be automatically reloaded.  


=====================
Relax Network Sharing
=====================

The relax sharing setting goes in the [GENERAL] section as follows:

rlxshare=c:\ATARIDISKS@192.168.123.77:1400

Replace 192.168.123.77 with your computer IP address and replace 8989 with the
port where you have Relax running.


============================
Note on Samba/NetBIOS Shares
============================

There are two INI file settings relating to Samba/NetBIOS sharing and they both
reside in the [GENERAL] section of ATARIXLBOX.INI:

smbshare=smb://username:password@workgroup:ip_address/computername/sharename
smb_nameserver=192.168.0.1


The smbshare parameter accepts many different formats.  Here are the most 
common:

smbshare=smb://username:password@workgroup/computername/sharename
smbshare=smb://username:password@workgroup:ip_address/computername/sharename
smbshare=smb://username:password@computername/sharename
smbshare=smb://username:password@computername:ip_address/sharename
smbshare=smb://workgroup/computername/sharename
smbshare=smb://workgroup:ip_address/computername/sharename
smbshare=smb://computername/sharename
smbshare=smb://computername:ip_address/sharename

Please try all of the above combinations before deciding it does not work.
Also be aware that some people have to select their SMB drive in ATARIXLBOX a few
times before any files appear.

If it's still not working, then set the nameserver equal to the IP address of
the computer you are trying to reach or set it equal to your NetBIOS name server.
(If you don't know what a NetBIOS name server is, then just set it to the 
IP address of the computer you are trying to reach.)


Also remember that when you make changes to ATARIXLBOX.INI, you have to do a 
"Force Reload of D:\*.INI" from the Configuration Menu or else the changes
you made to ATARIXLBOX.INI will not be loaded.  


=============
Configuration
=============

Almost everything can be changed from the configuration menu.  Here are the
things that require manual modifications to the ATARIXLBOX.INI file included in
the package:

Samba share name - goes in the [GENERAL] section.  Example:

smbshare=SMB://USERNAME:PASSWORD@COMPUTERNAME/SHARENAME


Screenshot directory - default is E:\SCREENSHOTS - goes in [GENERAL] section
Example:

screenshot_dir=E:\SCREENSHOTS


Skin directory - where skins can be found.  Default is D:\EMUSKINS - goes in
[GENERAL] section.  Example:

skin_dir=D:\EMUSKINS


Save directory - this is where you want all your saved games to be stored.
Default is E:\SAVES\ATARIXLBOX.  Goes in [GENERAL] section.  Example:

save_dir=E:\SAVES\ATARIXLBOX


The default ROM directory INI setting goes in the [GENERAL] section as follows:

rom_dir=d:\ATARIDISKS


If you change any of the above items, then you must upload the new ATARIXLBOX.INI
file to your XBox, load up ATARIXLBOX, then select "Force Reload D:\\*.ini 
Settings" from the Configuration menu.  Please note that this will overwrite
any of the setting changes you might have made after you first loaded
ATARIXLBOX.


===============
Menu Navigation
===============

Select menu options with the DPAD or with R/LTrigger.  The speed of 
R/LTrigger movements can be controlled by :

Configuration -> Menu Scroll Speed

There are some places where you can enter or change values.  This 
can usually be done in a variety of ways include DPAD Left/Right, 
R/L Trigger, and L/R Thumb.  Try all of them if the values are changing
too slowly.

"A" selects the highlighted choice.  "B" cancels/returns.
"Y" from a file-select list will go up one directory.


=======
Netplay
=======

In order to netplay with someone, follow these steps:

 - Go to the Configuration menu
 - Select Netplay options
 - Turn netplay on
 - Add a server if you are going to connect to someone else
 - Select the game to play
 - If netplay is on, it will ask you if you want to be the client
   or the server.  One person is the client, and the other is the server.
   If you are the server, the game will wait until the client has
   joined.  If you are the client, make sure the server is ready to accept
   your connection before continuing.  
 - When server starts netplay, you can select a netplay skip value.
   This number specifies how often it should skip checking for network data.
   The higher the number, the less often it checks for network data, but the
   result will be a less responsive controller.
 - Once a connection has been made, it should work fine.

NOTE : You both MUST be using the *EXACT* same game.  
I would be *extremely* surprised if the PAL version of a game
worked via netplay with an NTSC version of the same game.  


The server player is always player 1.  The client player is always player 2.

I don't know how well netplay will work across real networks.  Two xbox's 
on the same intranet work very well, though.

If your connection is lost during gameplay, just wait 30 seconds and
you can return to the game select menu.  (Or you can always reboot...)


=====
SKINS
=====


Instructions for making a new skin:

 - Create a new directory off of your SKINS directory (default skins directory
   is D:\EMUSKINS
 - Place your sound/font/graphic media files in this new directory 
 - Load ATARIXLBOX
 - "Select Skin" from the main menu and select your new directory.
 - Select Configuration
 - select Configure Skin
 - Use the menus to select your new media files and change your settings
 - When you are satisfied with what you have, go back to the main menu.
 - Select "Configuration"
 - Select "Overwrite D:\*.ini and D:\emuskins\\<skin>\\settings.ini"
   This will write the skin settings in your skin directory (if your skin
   directory is on the hard drive.)
 - You're done!  You can package up the directory and share it with your friends.


If you wish to use sprites in your new skin, then read the following:

 - Create a subdirectory off of your new skin directory called SPRITES
   e.g. D:\EMUSKINS\NEWSKIN\SPRITES
 - In this new SPRITES directory create a 0-based numeric directory for
   each sprite you wish to make.  This means that if you have 4 sprites
   you wish to load, the directory names *must* be called 0, 1, 2, and 3.

   Do not call them 1, 2, 3, and 4.  
   Do not call them 0, 3, 5, 6.  
   Do not call them SPRITE1, SPRITE2, SPRITE3, SPRITE4.  

 - Inside each of these new directories, you must place the sprite frames.
   Each frame is represented by a BMP, PNG, or JPG file.  The order of the
   frames is given by the filenames.  These filenames must also be named
   with 0-based numbers.  For example, 0.png, 1.png, 2.png.  Look at the
   sprites directory of the included default skin to see how it works.

 - Do not skip numbers when naming sprite directories or sprite frame 
   filenames.  A list of directories called 0,1,2,5,7 is *INVALID*.
   Similarly, a list of files called 0.png, 1.png, 4.png, 5.png is also
   *INVALID*.

Also be aware of memory constraints.  Let's say you have a frame of a sprite
called 0.png.  This picture file is 90 pixels wide and 130 pixels high.
This will get rounded up to a 256x256 pixel 32bit picture.  This means
that it will consume 256x256x4 bytes (256KB) of memory.  If your sprite has
10 frames of animation, that's around 2.5MB of memory.  Keep this in mind
before you make ultra-smooth moving sprites with hundreds of frames of
animation.

You can check your available memory by going to Configuration -> Configure Skin
-> Show Available Memory

If you make/configure a skin and ATARIXLBOX does not load the next time you
play it, then you need to delete the E:\SAVES\ATARIXLBOX\ATARIXLBOX.INI and
E:\SAVES\ATARIXLBOX\SKIN_SETTINGS.INI files.  ATARIXLBOX should work fine again,
but you'll have to reconfigure your skin.  The problem was probably
that one of your resources (like a WAV or background file) was specified
incorrectly or was never changed from the old skin.  Carefully look at the 
E:\SAVES\ATARIXLBOX\SKIN_SETTINGS.INI file to make sure that all filenames exist 
in your skin directory.


====================
Controller Remapping
====================

Configuration -> Configure Controllers

There are 32 general/all-purpose emulator "buttons" or actions.  Each of these
buttons can be assigned a specific emulator action.  For example, Emu Button 1
can be A, or B, or DPad Down, etc.  These "emu buttons" can then be assigned 
XBox triggers.  For example, Emu Button 1 (which you have mapped to, for 
example, A) can be triggered by  XBox controller button B.  The default button 
mappings should provide enough information on how the system works and 
how it can be used.  

==========
Autofiring
==========

Configuration -> Configure Controllers -> Controller # -> Change Autofire

Each "Emu Button" can be set up for autofiring.  Simply set the autofire
variable to a non-zero value.  This value indicates how long the emulator
should wait before releasing and re-pressing the button.  A value of 1
might be too fast to register on some games.  I suggest setting it to a
number like 5 first and them fine-tuning it.


======
Combos
======

Setting up a combo can be kind of tricky because you need to know exactly
what the game expects to have happen on the joypads to execute the special
move.  For example, let's say that we want to map a standard move that is
described like this : 

D, DR, R, A

D = Down, DR = Down+Right, R = Right, A = A button

First, set the delay to a number like 2 or 3.  Then set up the moves.  In
this case, any (or none) of the following might work:

Down
Down+Right
Right
Right+A
Right

OR

Down
Down+Right
Right+A

OR

Down
Down+Right
Right
Right+A
Right+A
Right+A

You will probably need to fine-tune each combo move before it works, but
you'll soon get the hang of it.


================
MP3/M3U Playback
================

Simply select the MP3 or M3U file from the game-selection screen.

The M3U file can also just be a regular file with one songfile per line.
For example:

d:\songs\song1.mp3
e:\moresongs\song2.mp3
smb:\mp3s\song3.mp3

If you are making a playlist of songs on your SMB share, then please note
the format:

smb:\mp3s\song3.mp3

The smb:\ tells ATARIXLBOX to read from your SMB shared directory.  Do not
put the SMB share definition in the filename.

----------SMB shared filenames are case sensitive!!!---------

==============
No Save States
==============

The state-saving functionality is currently not implemented in Z26.


==================================================
Cheating System - How To Make Your Own Cheat Codes
==================================================

Special Note for Z26 - In many Atari 2600 games, certain important values (like
the number of lives you have, etc) are stored as a nibble value.  A nibble is
half of a byte.  For example, in Asteroids your number of lives and the current
direction you are pointing are stored in the same byte.  (High nibble is the
number of lives and the low nibble is the direction.)  When searching for cheat codes,
I would advise using *only* the "equal to" or "not equal to" options.

Just about every single port I've released has this feature, and I 
occasionally hear people asking "how does it work?" This is easiest to 
explain by example:

 1) Start playing a game. 

 2) Go to Options Menu and select "Start Search for Cheat Code"

 3) Go back to game and lose a life

 4) Go to Options Menu and select "Continue Search For Cheat Code"

 5) Select "Search For Values Less Than Before" because when you
    first selected "Start Search For Cheat Codes" you had one more
    life than you do now.  You will see the number of matches go down.

 6) If the number of matches is greater than 10, then perform actions
    3, 4 and 5 continually until the number of matches is less than 10.
    If you run out of lives, then just start playing the game again.
    (Do not exit the emulator and select the game again - just start another
    game from within the emulator.)  Now you will have a full stock of lives,
    which is *more* than the last time you checked your values.  So when you
    continue searching, you'll want to select "Search For Values Greater Than
    Before."  Then go through steps 3-5 over and over until you have less than
    10 matches.

 7) Now that you have less than 10 matches, you can add the codes to your
    list.  If the search narrowed the list down to 1 possible match, it
    will automatically add it to your list.  Now you can "List Cheat Codes"
    and selectively turn on/off the cheat codes to try them out and see
    which on is the right one.

Alternately, you can use the "Search For An Exact Value" option if you
already know the number you wish to change.  Example:

Let's say you are playing Dragon Warrior and your character currently has
25 Hit Points.  Follow these instructions:

 1) Go to Options Menu and select "Start Search for Cheat Code"

 2) Select "Continue Search For Cheat Code"

 3) Select "Search For an Exact Value" and enter 25 as the number.
    The number of matches should decrease very quickly.  

 4) Go back to the game and do something to change your Hit Points amount.
    For example, let's say you drink a potion and your Hit Points are now 35.

 5) Go to options menu and select "Continue Search For Cheat Code"

 6) Select "Search For an Exact Value" and enter 35 as the number.
    Chances are very good that the number of matches will be down to 
    one or two.  Just try out the codes to see which one gives you infinite 
    Hit Points!

Advanced Cheat Code Usage:

Cheat codes have the following format:

TT AAAAAA VVVV

TT     = Type
AAAAAA = Address
VVVV   = Value

You can hand-edit the cheat codes you've created.  Go to the Cheat Code list,
select a code, and select Edit.  Let's say you've already created a cheat code
that keeps your hit points at 25.  The last four hex digits of your code will be
0019 (which is hexidecimal for 25.)  You can change the last two digits to, for 
example, FF which will give you 255 hit points instead of 25.  More sophisticated
codes can be made by altering the Type:

Type Table

80 - Means set the 16-bit value (0-65535) pointed to by the cheat code address 
     to the cheat code value.

30 - Means set the 8-bit value (0-255) pointed to by the cheat code address 
     to the cheat code value.

10 - Means increase the 16-bit value pointed to by the cheat code address
     by the cheat code value.

11 - Means decrease the 16-bit value pointed to by the cheat code address
     by the cheat code value.

20 - Means increase the 8-bit value pointed to by the cheat code address
     by the cheat code value.

21 - Means decrease the 8-bit value pointed to by the cheat code address
     by the cheat code value.

D0 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is equal to the cheat code value

D1 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is not equal to the cheat code value

D2 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is less than the cheat code value

D3 - Means only execute the next code in the list if the 16-bit value pointed
     to by the cheat code address is greater than the cheat code value

E0 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is equal to the cheat code value

E1 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is not equal to the cheat code value

E2 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is less than the cheat code value

E3 - Means only execute the next code in the list if the 8-bit value pointed
     to by the cheat code address is greater than the cheat code value

If you are familiar with cheat codes, you'll notice that these are standard
Gameshark types.  With enough experience you could make some seriously
interesting codes with this system.  

For example, I played around with Super Mario Bros (NES) and found out that
address 0007EE stores the number of coins and address 0007FA is the
one's digit in the timer.  Here are two codes:

E0 0007FA 03
20 0007EE 01

Those codes mean that while the ones timer digit is equal to three, increase the 
number of coins by one.  You won't see the coins updated on the overhead
display in the game, but if you start a game, wait until the timer one's
digit is a three and then collect a coin, you'll see that your coin value
is actually much higher than one, now.  Fun useless stuff.  :P


==================================================
Command-Line/Auto-Launching and Return to Launcher
==================================================

This section is for the developers of frontends, dashboards, etc.

ATARIXLBOX can be started with parameters to automatically launch a game
at startup.  Example code can be found in the custom_launch_params.cpp file.

There is also example code in that same file that will show you how to 
make ATARIXLBOX load your frontend/dashboard when it exits.

Stella, Gnuboy, SMSPlus, FCEUltra, HUGO, NeoPop, DGen, Bochs, HUGO-CD, FMSXBox,
Bliss, WinSTon, Gens, Z26X, StepmaniaX, PCSXBox, XBoyAdvance, DOSXBox, AtariXLBox....
what's next?


Enjoy!
